
p1= 251223716969679284158034841648497945449
q1= 312034879071048933569057506006677671543
p2= 211337891216364704869900032967411360087
q2= 297188134283417063106785912026186242733
n1= 78390562144413299279009467011698556344448786147101545377210676133018753657807
n2= 62807113593983181355469795214442769014099701199525162295780030497899849997771
c1= 6211708410907396487178694692964828961624573302527469677177853845246758507683
c2= 42421016332044012951488859938433606804129539757256957220125138277657724418334

e=65537

import libnum

phi1=(p1-1)*(q1-1)
d1=libnum.invmod(e,phi1)
m1=pow(c1,d1,n1)

phi2=(p2-1)*(q2-1)
d2=libnum.invmod(e,phi2)
m2=pow(c2,d2,n2)

m=libnum.solve_crt([m1,m2],[n1,n2])
print(libnum.n2s(m))


c=libnum.solve_crt([c1,c2],[n1,n2])
phi=(p1-1)*(p2-1)*(q1-1)*(q2-1)
d=libnum.invmod(e,phi)
m=pow(c,d,n1*n2)
print(libnum.n2s(m))






